home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 29 / CDT29.iso / e-Mail / WorldClient Pro 2.2.3 / wcsetup.exe / WEBHELP.ZIP / hhapplet / IndexTree.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-10-21  |  2.2 KB  |  119 lines

  1. package hhapplet;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Component;
  5. import treeview.SiblingChildTree;
  6. import treeview.TreeView;
  7. import treeview.TreeViewNode;
  8.  
  9. public class IndexTree extends TreeView {
  10.    IndexPane m_ip;
  11.    private IndexTreeNode m_root = new IndexTreeNode(this);
  12.    int m_nVisibleIndex = -1;
  13.    int m_nCountCache = -1;
  14.  
  15.    public String getItem(int var1) {
  16.       IndexTreeNode var2 = (IndexTreeNode)this.m_root.getChild();
  17.  
  18.       for(int var3 = 0; var3 < var1; ++var3) {
  19.          var2 = (IndexTreeNode)((SiblingChildTree)var2).getSibling();
  20.       }
  21.  
  22.       return ((TreeViewNode)var2).getLabel();
  23.    }
  24.  
  25.    public IndexTree(IndexPane var1) {
  26.       this.m_ip = var1;
  27.       ((TreeView)this).setRoot(this.m_root);
  28.       ((Component)this).setBackground(new Color(255, 255, 255));
  29.    }
  30.  
  31.    public int getVisibleIndex() {
  32.       return this.m_nVisibleIndex;
  33.    }
  34.  
  35.    public int countItems() {
  36.       if (this.m_nCountCache == -1) {
  37.          IndexTreeNode var1 = (IndexTreeNode)this.m_root.getChild();
  38.  
  39.          for(this.m_nCountCache = 0; var1 != null; var1 = (IndexTreeNode)((SiblingChildTree)var1).getSibling()) {
  40.             ++this.m_nCountCache;
  41.          }
  42.       }
  43.  
  44.       return this.m_nCountCache;
  45.    }
  46.  
  47.    public String getSelectedItem() {
  48.       for(IndexTreeNode var1 = (IndexTreeNode)this.m_root.getChild(); var1 != null; var1 = (IndexTreeNode)((SiblingChildTree)var1).getSibling()) {
  49.          if (((TreeViewNode)var1).isSelected()) {
  50.             return ((TreeViewNode)var1).getLabel();
  51.          }
  52.       }
  53.  
  54.       return "";
  55.    }
  56.  
  57.    public void select(int var1) {
  58.       IndexTreeNode var2 = (IndexTreeNode)this.m_root.getChild();
  59.  
  60.       for(int var3 = 0; var2 != null; ++var3) {
  61.          if (var3 == var1) {
  62.             ((TreeViewNode)var2).select(true);
  63.             super.m_tvnCurrentSelection = var2;
  64.          } else {
  65.             ((TreeViewNode)var2).select(false);
  66.          }
  67.  
  68.          var2 = (IndexTreeNode)((SiblingChildTree)var2).getSibling();
  69.       }
  70.  
  71.       ((Component)this).paintAll(((Component)this).getGraphics());
  72.    }
  73.  
  74.    protected void InternalSelectionHasChanged() {
  75.       this.m_ip.getEditBox().setText(this.getSelectedItem());
  76.    }
  77.  
  78.    public void addItem(String var1) {
  79.       IndexTreeNode var2 = new IndexTreeNode(this);
  80.       ((TreeViewNode)var2).setLabel(var1);
  81.       this.m_root.addChild(var2);
  82.       this.m_nCountCache = -1;
  83.       ((Component)this).repaint();
  84.    }
  85.  
  86.    public void makeVisible(int var1) {
  87.       this.m_nVisibleIndex = var1;
  88.       IndexTreeNode var2 = (IndexTreeNode)this.m_root.getChild();
  89.  
  90.       for(int var3 = 0; var3 <= var1; ++var3) {
  91.          var2 = (IndexTreeNode)((SiblingChildTree)var2).getSibling();
  92.       }
  93.  
  94.       ((TreeView)this).EnsureDisplayed(var2);
  95.       ((Component)this).paintAll(((Component)this).getGraphics());
  96.    }
  97.  
  98.    public int getSelectedIndex() {
  99.       IndexTreeNode var1 = (IndexTreeNode)this.m_root.getChild();
  100.  
  101.       for(int var2 = 0; var1 != null; ++var2) {
  102.          if (((TreeViewNode)var1).isSelected()) {
  103.             return var2;
  104.          }
  105.  
  106.          var1 = (IndexTreeNode)((SiblingChildTree)var1).getSibling();
  107.       }
  108.  
  109.       return -1;
  110.    }
  111.  
  112.    public void clear() {
  113.       this.m_root = new IndexTreeNode(this);
  114.       ((TreeView)this).setRoot(this.m_root);
  115.       this.m_nCountCache = -1;
  116.       ((Component)this).paintAll(((Component)this).getGraphics());
  117.    }
  118. }
  119.